package com.ruubypay.biz.mvc.api.model.response;

import java.util.*;

/**
 * 查询的每个任务对象的实体
 * @author chenhaiyang
 */
public class TaskEntity {

    /**
     * 任务id
     */
    private String taskId;
    /**
     * 流程名称
     */
    private String processName;
    /**
     * 流程标题（和当前具体业务有关系的一个变量）
     */
    private String title;
    /**
     * 流程发起人
     */
    private String startUserName;
    /**
     * 业务字段
     */
    private String businessKey;
    /**
     * 当前任务
     */
    private String name;
    /**
     * 流程实例Id
     */
    private String processInstanceId;
    /**
     * 创建时间
     */
    private Date createTime;
    /**
     * formKey 表单key
     */
    private String formKey;
    /**
     * 存储流程变量，整个流程生效，key-value格式
     */
    private Map<String,Object> processVariables;
    /**
     * 任务类型 1 已签收的任务。2 未签收的任务
     */
    private Integer type;

    public String getTaskId() {
        return taskId;
    }

    public void setTaskId(String taskId) {
        this.taskId = taskId;
    }

    public String getProcessName() {
        return processName;
    }

    public void setProcessName(String processName) {
        this.processName = processName;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getStartUserName() {
        return startUserName;
    }

    public void setStartUserName(String startUserName) {
        this.startUserName = startUserName;
    }

    public String getBusinessKey() {
        return businessKey;
    }

    public void setBusinessKey(String businessKey) {
        this.businessKey = businessKey;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getProcessInstanceId() {
        return processInstanceId;
    }

    public void setProcessInstanceId(String processInstanceId) {
        this.processInstanceId = processInstanceId;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getFormKey() {
        return formKey;
    }

    public void setFormKey(String formKey) {
        this.formKey = formKey;
    }

    public Map<String, Object> getProcessVariables() {
        return processVariables;
    }

    public void setProcessVariables(Map<String, Object> processVariables) {
        this.processVariables = processVariables;
    }

    public Integer getType() {
        return type;
    }

    public void setType(Integer type) {
        this.type = type;
    }

    @Override
    public String toString() {
        return "TaskEntity{" +
                "taskId='" + taskId + '\'' +
                ", processName='" + processName + '\'' +
                ", title='" + title + '\'' +
                ", startUserName='" + startUserName + '\'' +
                ", businessKey='" + businessKey + '\'' +
                ", name='" + name + '\'' +
                ", processInstanceId='" + processInstanceId + '\'' +
                ", createTime=" + createTime +
                ", formKey='" + formKey + '\'' +
                ", processVariables=" + processVariables +
                ", type=" + type +
                '}';
    }
}
